package com.rp.common.utils;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;

/**
 * 类说明:
 *
 * @author ****
 * @date 2020-07-11 14:45  新建
 */

public class CreateFile {
    public static boolean createJsonFile(String jsonString, String filePath) {
        // 标记文件生成是否成功
        boolean flag = true;
        // 生成json格式文件
        try {
            // 保证创建一个新文件
            File file = new File(filePath);
            if (!file.getParentFile().exists()) { // 如果父目录不存在，创建父目录
                file.getParentFile().mkdirs();
            }
            if (file.exists()) { // 如果已存在,删除旧文件
                file.delete();
            }
            file.createNewFile();

            // 将格式化后的字符串写入文件
            Writer write = new OutputStreamWriter(new FileOutputStream(file), "UTF-8");
            write.write(jsonString);
            write.flush();
            write.close();
        } catch (Exception e) {
            flag = false;
            e.printStackTrace();
        }

        // 返回是否成功的标记
        return flag;
    }

//    public static void createJsonFile2(String jsonString, String filePath) {
//        byte[] sourceByte = jsonString.getBytes();
//        try {
//            File file = new File(filePath);		//文件路径（路径+文件名）
//            if (!file.exists()) {	//文件不存在则创建文件，先创建目录
//                File dir = new File(file.getParent());
//                dir.mkdirs();
//                file.createNewFile();
//            }
//            FileOutputStream outStream = new FileOutputStream(file);	//文件输出流用于将数据写入文件
//            outStream.write(sourceByte);
//            outStream.close();	//关闭文件输出流
//        } catch (Exception e) {
//            e.printStackTrace();
//        }
//    }
}
